/*
 * Project: N|Watch
 * Author: Zak Kemble, contact@zakkemble.co.uk
 * Copyright: (C) 2014 by Zak Kemble
 * License: GNU GPL v3 (see License.txt)
 * Web: http://blog.zakkemble.co.uk/diy-digital-wristwatch/
 */

#ifndef ENGLISH_H_
#define ENGLISH_H_



// String buffer sizes
// Don't forget to add 1 for null terminator
#define BUFFSIZE_STR_MENU	24
#define BUFFSIZE_STR_DAYS	4
#define BUFFSIZE_STR_MONTHS	4

#define BUFFSIZE_DATE_FORMAT		((BUFFSIZE_STR_DAYS - 1) + (BUFFSIZE_STR_MONTHS - 1) + 12)
#define BUFFSIZE_TIME_FORMAT_SMALL		9



// String formats
#define DATE_FORMAT ("%s %02hhu %s 20%02hhu")
#define TIME_FORMAT_SMALL ("%02hhu:%02hhu%c")




#define CHAR_DEGREES	127
#define CHAR_TICK		128

#define CHAR_AM	'A'
#define CHAR_PM	'P'
#define CHAR_24	' '

#define CHAR_YES	'Y'
#define CHAR_NO		'N'

#define STR_DOWCHARS	"MTWTFSS"



// Days
// Also see BUFFSIZE_STR_DAYS
#define STR_MON			"Mon"
#define STR_TUE			"Tue"
#define STR_WED			"Wed"
#define STR_THU			"Thu"
#define STR_FRI			"Fri"
#define STR_SAT			"Sat"
#define STR_SUN			"Sun"

// Months
// Also see BUFFSIZE_STR_MONTHS
#define STR_JAN			"Jan"
#define STR_FEB			"Feb"
#define STR_MAR			"Mar"
#define STR_APR			"Apr"
#define STR_MAY			"May"
#define STR_JUN			"Jun"
#define STR_JUL			"Jul"
#define STR_AUG			"Aug"
#define STR_SEP			"Sep"
#define STR_OCT			"Oct"
#define STR_NOV			"Nov"
#define STR_DEC			"Dec"


// Menu strings
// Also see BUFFSIZE_STR_MENU

#define STR_MAINMENU	"< MAIN MENU >"
#define STR_ALARMS		"Alarms"
#define STR_FLASHLIGHT	"Flashlight"
#define STR_STOPWATCH	"Stopwatch"
#define STR_GAMES		"Games"
#define STR_SETTINGS	"Settings"
#define STR_DIAGNOSTICS	"Diagnostics"
//#define STR_BTRCCAR		"BT RC Car"
#define STR_TUNEMAKER	"Tune maker"
//#define STR_CALCULATORS	"Calculators"

#define STR_ALARMSMENU	"< ALARMS >"

#define STR_TIMEDATEMENU	"< TIME & DATE >"
#define STR_SAVE		"Save"
#define STR_SAVED		"Saved"

#define STR_DIAGNOSTICSMENU	"< DIAGNOSTICS >"
#define STR_TEMPERATURE		"Temperature %hhd.%hhuC"
#define STR_BATTERY			"Battery    %umV"
#define STR_SHOWFPS			"Show FPS%9c"

#define STR_DISPLAYMENU	"< DISPLAY >"
#define STR_BRIGHTNESS	"Brightness"
#define STR_INVERT		"Invert"
#define STR_ROTATE		"Rotate"
#define STR_ANIMATIONS	"Animations"

#define STR_GAMESMENU	"< GAMES >"

#define STR_SOUNDMENU	"< SOUND >"
#define STR_UI			"UI"
#define STR_HOURBEEPS	"Hour beeps"

#define STR_SLEEPMENU	"< SLEEP >"
#define STR_TIMEOUT		"Timeout"
//#define STR_CLOCKMODE	"Clock mode"

#define STR_SETTINGSMENU	"< SETTINGS >"
#define STR_TIMEDATE	"Time & date"
#define STR_SLEEP		"Sleep"
#define STR_SOUND		"Sound"
#define STR_DISPLAY		"Display"
#define STR_LEDS		"LEDs"
#define STR_RCSETTINGS	"RC Settings"

#define STR_BACK		"Back"
#define STR_EXIT		"Exit"




// Game strings

#define STR_GAME1		"Breakout"
#define STR_GAME2		"Car Dodge"

#define STR_WIN			"WIN!"
#define STR_GAMEOVER	"GAMEOVER!"
#define STR_SCORE		"Score:"
#define STR_HIGHSCORE	"Highscore:"
#define STR_NEWHIGHSCORE	"!NEW HIGHSCORE!"



// Little images (8x8) for showing day of week of next alarm on main screen

#define DOWIMG_MON 0x0F,0x01,0x02,0x01,0x6F,0x90,0x90,0x60
#define DOWIMG_TUE 0x01,0x1F,0x01,0x00,0x78,0x80,0x80,0x78
#define DOWIMG_WED 0x0F,0x04,0x02,0x04,0x0F,0xF8,0xA8,0xA8
#define DOWIMG_THU 0x01,0x1F,0x01,0x00,0xF8,0x20,0x20,0xF8
#define DOWIMG_FRI 0x1F,0x05,0x05,0x00,0xF8,0x28,0x68,0x90
#define DOWIMG_SAT 0x12,0x15,0x09,0x00,0xF0,0x28,0x28,0xF0
#define DOWIMG_SUN 0x12,0x15,0x09,0x00,0x78,0x80,0x80,0x78


// Character set for this language

#define CHARACTER_SET \
{0x00,0x00,0x00,0x00,0x00},/* space */ \
{0x00,0x5F,0x00,0x00,0x00},/* ! */ \
{0x00,0x07,0x00,0x07,0x00},/* " */ \
{0x14,0x7F,0x14,0x7F,0x14},/* # */ \
{0x24,0x2A,0x7F,0x2A,0x12},/* $ */ \
{0x23,0x13,0x08,0x64,0x62},/* % */ \
{0x36,0x49,0x55,0x22,0x50},/* & */ \
{0x00,0x05,0x03,0x00,0x00},/* ' */ \
{0x1C,0x22,0x41,0x00,0x00},/* ( */ \
{0x41,0x22,0x1C,0x00,0x00},/* ) */ \
{0x08,0x2A,0x1C,0x2A,0x08},/* * */ \
{0x08,0x08,0x3E,0x08,0x08},/* + */ \
{0xA0,0x60,0x00,0x00,0x00},/* , */ \
{0x08,0x08,0x08,0x08,0x08},/* - */ \
{0x60,0x60,0x00,0x00,0x00},/* . */ \
{0x20,0x10,0x08,0x04,0x02},/* / */ \
{0x3E,0x51,0x49,0x45,0x3E},/* 0 */ \
{0x00,0x42,0x7F,0x40,0x00},/* 1 */ \
{0x62,0x51,0x49,0x49,0x46},/* 2 */ \
{0x22,0x41,0x49,0x49,0x36},/* 3 */ \
{0x18,0x14,0x12,0x7F,0x10},/* 4 */ \
{0x27,0x45,0x45,0x45,0x39},/* 5 */ \
{0x3C,0x4A,0x49,0x49,0x30},/* 6 */ \
{0x01,0x71,0x09,0x05,0x03},/* 7 */ \
{0x36,0x49,0x49,0x49,0x36},/* 8 */ \
{0x06,0x49,0x49,0x29,0x1E},/* 9 */ \
{0x00,0x36,0x36,0x00,0x00},/* : */ \
{0x00,0xAC,0x6C,0x00,0x00},/*  ; */ \
{0x08,0x14,0x22,0x41,0x00},/* < */ \
{0x14,0x14,0x14,0x14,0x14},/* = */ \
{0x41,0x22,0x14,0x08,0x00},/* > */ \
{0x02,0x01,0x51,0x09,0x06},/* ? */ \
{0x32,0x49,0x79,0x41,0x3E},/* @ */ \
{0x7E,0x09,0x09,0x09,0x7E},/* A */ \
{0x7F,0x49,0x49,0x49,0x36},/* B */ \
{0x3E,0x41,0x41,0x41,0x22},/* C */ \
{0x7F,0x41,0x41,0x22,0x1C},/* D */ \
{0x7F,0x49,0x49,0x49,0x41},/* E */ \
{0x7F,0x09,0x09,0x09,0x01},/* F */ \
{0x3E,0x41,0x41,0x51,0x72},/* G */ \
{0x7F,0x08,0x08,0x08,0x7F},/* H */ \
{0x41,0x7F,0x41,0x00,0x00},/* I */ \
{0x20,0x40,0x41,0x3F,0x01},/* J */ \
{0x7F,0x08,0x14,0x22,0x41},/* K */ \
{0x7F,0x40,0x40,0x40,0x40},/* L */ \
{0x7F,0x02,0x0C,0x02,0x7F},/* M */ \
{0x7F,0x04,0x08,0x10,0x7F},/* N */ \
{0x3E,0x41,0x41,0x41,0x3E},/* O */ \
{0x7F,0x09,0x09,0x09,0x06},/* P */ \
{0x3E,0x41,0x51,0x21,0x5E},/* Q */ \
{0x7F,0x09,0x19,0x29,0x46},/* R */ \
{0x26,0x49,0x49,0x49,0x32},/* S */ \
{0x01,0x01,0x7F,0x01,0x01},/* T */ \
{0x3F,0x40,0x40,0x40,0x3F},/* U */ \
{0x1F,0x20,0x40,0x20,0x1F},/* V */ \
{0x3F,0x40,0x38,0x40,0x3F},/* W */ \
{0x63,0x14,0x08,0x14,0x63},/* X */ \
{0x03,0x04,0x78,0x04,0x03},/* Y */ \
{0x61,0x51,0x49,0x45,0x43},/* Z */ \
{0x7F,0x41,0x41,0x00,0x00},/* [ */ \
{0x02,0x04,0x08,0x10,0x20},/* \ */ \
{0x41,0x41,0x7F,0x00,0x00},/* ] */ \
{0x04,0x02,0x01,0x02,0x04},/* ^ */ \
{0x80,0x80,0x80,0x80,0x80},/* _ */ \
{0x01,0x02,0x04,0x00,0x00},/* ' */ \
{0x20,0x54,0x54,0x54,0x78},/* a */ \
{0x7F,0x48,0x44,0x44,0x38},/* b */ \
{0x38,0x44,0x44,0x28,0x00},/* c */ \
{0x38,0x44,0x44,0x48,0x7F},/* d */ \
{0x38,0x54,0x54,0x54,0x18},/* e */ \
{0x08,0x7E,0x09,0x02,0x00},/* f */ \
{0x18,0xA4,0xA4,0xA4,0x7C},/* g */ \
{0x7F,0x08,0x04,0x04,0x78},/* h */ \
{0x00,0x7D,0x00,0x00,0x00},/* i */ \
{0x80,0x84,0x7D,0x00,0x00},/* j */ \
{0x7F,0x10,0x28,0x44,0x00},/* k */ \
{0x41,0x7F,0x40,0x00,0x00},/* l */ \
{0x7C,0x04,0x18,0x04,0x78},/* m */ \
{0x7C,0x08,0x04,0x7C,0x00},/* n */ \
{0x38,0x44,0x44,0x38,0x00},/* o */ \
{0xFC,0x24,0x24,0x18,0x00},/* p */ \
{0x18,0x24,0x24,0xFC,0x00},/* q */ \
{0x00,0x7C,0x08,0x04,0x00},/* r */ \
{0x48,0x54,0x54,0x24,0x00},/* s */ \
{0x04,0x7F,0x44,0x00,0x00},/* t */ \
{0x3C,0x40,0x40,0x7C,0x00},/* u */ \
{0x1C,0x20,0x40,0x20,0x1C},/* v */ \
{0x3C,0x40,0x30,0x40,0x3C},/* w */ \
{0x44,0x28,0x10,0x28,0x44},/* x */ \
{0x1C,0xA0,0xA0,0x7C,0x00},/* y */ \
{0x44,0x64,0x54,0x4C,0x44},/* z */ \
{0x08,0x36,0x41,0x00,0x00},/* { */ \
{0x00,0x7F,0x00,0x00,0x00},/* | */ \
{0x41,0x36,0x08,0x00,0x00},/* } */ \
{0x02,0x01,0x01,0x02,0x01},/* ~ */ \
{0x02,0x05,0x05,0x02,0x00},/* degrees (non-standard, normally DEL) */ \
{0x60,0xC0,0xF0,0x38,0x1C},/* tick (non-standard) */ \

#endif /* ENGLISH_H_ */
